A virtual machine (VM) is a portion of software that, when executed on hardware of a host computer system (also referred to as “host” or “host machine”), creates an environment allowing the virtualization of the host computer system. Virtualization permits multiplexing of the hardware of the underlying host computer between different VMs. The host computer system allocates a certain amount of its resources to each of the VMs. Each VM then can use the allocated resources to execute applications, including operating systems (referred to as guest operating systems (OS)). A software layer providing the virtualization may be referred to as a hypervisor, a virtual machine monitor (VMM), or a kernel-based hypervisor, to name a few examples. The hypervisor emulates the underlying hardware of the host computer system, making the use of the VM transparent to the guest OS and the user of the VM.